// $ANTLR 3.4 C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g 2012-05-05 13:59:53

package com.plt.w2w;
import java.util.Map;
import java.util.HashMap;
import java.io.*;
import java.util.ArrayList;


import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;

@SuppressWarnings({"all", "warnings", "unchecked"})
public class GrammarBackup3Parser extends Parser {
    public static final String[] tokenNames = new String[] {
        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "AGE", "AND", "ASSIGNMENT_OP", "CATEGORY", "COLORT", "CONDITIONAL_OP", "CREATEEVENT", "CREATET", "DATE", "DATET", "DELIMITER", "ELSE", "ENDDATE", "ENDOFLINE", "ENDOFSTMT", "ENDTIME", "EVENT", "FOREACH", "GARMENT", "GENERATEOUTFIT", "HUMIDITY", "IDENTIFIER", "IF", "INCLUDE", "INT", "ITEMT", "LEFTCURLY", "LEFTPARAN", "MAIN", "MAKERT", "NUMBER", "OCCUPATION", "OR", "PREFERENCET", "REJTOK", "RETTOK", "RIGHTCURLY", "RIGHTPARAN", "SHADET", "STARTDATE", "STARTTIME", "STRING", "TEMPERATURE", "TIME", "TIMET", "USER", "USET", "VOID", "WARDROBET", "WEATHER", "WEIGHT", "WS", "'+'", "','", "'1'", "'2'", "'3'"
    };

    public static final int EOF=-1;
    public static final int T__56=56;
    public static final int T__57=57;
    public static final int T__58=58;
    public static final int T__59=59;
    public static final int T__60=60;
    public static final int AGE=4;
    public static final int AND=5;
    public static final int ASSIGNMENT_OP=6;
    public static final int CATEGORY=7;
    public static final int COLORT=8;
    public static final int CONDITIONAL_OP=9;
    public static final int CREATEEVENT=10;
    public static final int CREATET=11;
    public static final int DATE=12;
    public static final int DATET=13;
    public static final int DELIMITER=14;
    public static final int ELSE=15;
    public static final int ENDDATE=16;
    public static final int ENDOFLINE=17;
    public static final int ENDOFSTMT=18;
    public static final int ENDTIME=19;
    public static final int EVENT=20;
    public static final int FOREACH=21;
    public static final int GARMENT=22;
    public static final int GENERATEOUTFIT=23;
    public static final int HUMIDITY=24;
    public static final int IDENTIFIER=25;
    public static final int IF=26;
    public static final int INCLUDE=27;
    public static final int INT=28;
    public static final int ITEMT=29;
    public static final int LEFTCURLY=30;
    public static final int LEFTPARAN=31;
    public static final int MAIN=32;
    public static final int MAKERT=33;
    public static final int NUMBER=34;
    public static final int OCCUPATION=35;
    public static final int OR=36;
    public static final int PREFERENCET=37;
    public static final int REJTOK=38;
    public static final int RETTOK=39;
    public static final int RIGHTCURLY=40;
    public static final int RIGHTPARAN=41;
    public static final int SHADET=42;
    public static final int STARTDATE=43;
    public static final int STARTTIME=44;
    public static final int STRING=45;
    public static final int TEMPERATURE=46;
    public static final int TIME=47;
    public static final int TIMET=48;
    public static final int USER=49;
    public static final int USET=50;
    public static final int VOID=51;
    public static final int WARDROBET=52;
    public static final int WEATHER=53;
    public static final int WEIGHT=54;
    public static final int WS=55;

    // delegates
    public Parser[] getDelegates() {
        return new Parser[] {};
    }

    // delegators


    public GrammarBackup3Parser(TokenStream input) {
        this(input, new RecognizerSharedState());
    }
    public GrammarBackup3Parser(TokenStream input, RecognizerSharedState state) {
        super(input, state);
    }

    public String[] getTokenNames() { return GrammarBackup3Parser.tokenNames; }
    public String getGrammarFileName() { return "C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g"; }


    	public Map<String, String[]> symbolTable = new HashMap<String, String[]>();
    	public ArrayList<String> mainFuncString = new ArrayList<String>();
    	public ArrayList<Garment> garments = new ArrayList<Garment>();



    // $ANTLR start "start"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:25:1: start : ( wardrobeCreation | mainProgram );
    public final void start() throws RecognitionException {
        String wardrobeCreation1 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:26:3: ( wardrobeCreation | mainProgram )
            int alt1=2;
            int LA1_0 = input.LA(1);

            if ( (LA1_0==CREATET) ) {
                alt1=1;
            }
            else if ( ((LA1_0 >= USET && LA1_0 <= VOID)) ) {
                alt1=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 1, 0, input);

                throw nvae;

            }
            switch (alt1) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:27:3: wardrobeCreation
                    {
                    pushFollow(FOLLOW_wardrobeCreation_in_start49);
                    wardrobeCreation1=wardrobeCreation();

                    state._fsp--;



                          //call the java class handling wardrobe creation
                          Wardrobe obj = new Wardrobe();
                          obj.create(garments,wardrobeCreation1);
                    //      for(int i=0; i<garments.size(); i++)
                    //      {
                    //        garments.get(i).printNicely();
                    //      }
                        

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:37:5: mainProgram
                    {
                    pushFollow(FOLLOW_mainProgram_in_start61);
                    mainProgram();

                    state._fsp--;



                    //      for(int i=0; i<mainFuncString.size(); i++)
                    //      {
                    //        System.out.println(mainFuncString.get(i));
                    //      }
                    //      
                          MainFuncBackEnd obj = new MainFuncBackEnd(symbolTable,mainFuncString);
                          obj.backEnd();
                          //call class handling
                        

                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "start"



    // $ANTLR start "wardrobeCreation"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:50:1: wardrobeCreation returns [String name] : createStatement items ;
    public final String wardrobeCreation() throws RecognitionException {
        String name = null;


        String createStatement2 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:51:3: ( createStatement items )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:52:3: createStatement items
            {
            pushFollow(FOLLOW_createStatement_in_wardrobeCreation87);
            createStatement2=createStatement();

            state._fsp--;


            pushFollow(FOLLOW_items_in_wardrobeCreation89);
            items();

            state._fsp--;



                  name = createStatement2;
              

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return name;
    }
    // $ANTLR end "wardrobeCreation"



    // $ANTLR start "createStatement"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:58:1: createStatement returns [String name] : CREATET WARDROBET wardrobeName ENDOFSTMT ENDOFLINE ;
    public final String createStatement() throws RecognitionException {
        String name = null;


        GrammarBackup3Parser.wardrobeName_return wardrobeName3 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:59:3: ( CREATET WARDROBET wardrobeName ENDOFSTMT ENDOFLINE )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:60:3: CREATET WARDROBET wardrobeName ENDOFSTMT ENDOFLINE
            {
            match(input,CREATET,FOLLOW_CREATET_in_createStatement114); 

            match(input,WARDROBET,FOLLOW_WARDROBET_in_createStatement116); 

            pushFollow(FOLLOW_wardrobeName_in_createStatement118);
            wardrobeName3=wardrobeName();

            state._fsp--;


            match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_createStatement120); 

            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_createStatement122); 


                  name = (wardrobeName3!=null?input.toString(wardrobeName3.start,wardrobeName3.stop):null);
              

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return name;
    }
    // $ANTLR end "createStatement"



    // $ANTLR start "items"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:66:1: items : item ENDOFLINE items1 ;
    public final void items() throws RecognitionException {
        Garment item4 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:67:3: ( item ENDOFLINE items1 )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:68:3: item ENDOFLINE items1
            {
            pushFollow(FOLLOW_item_in_items142);
            item4=item();

            state._fsp--;


            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_items144); 

            pushFollow(FOLLOW_items1_in_items146);
            items1();

            state._fsp--;



                garments.add(item4);
              

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "items"



    // $ANTLR start "items1"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:74:1: items1 : ( item ENDOFLINE items1 |);
    public final void items1() throws RecognitionException {
        Garment item5 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:75:3: ( item ENDOFLINE items1 |)
            int alt2=2;
            int LA2_0 = input.LA(1);

            if ( (LA2_0==LEFTCURLY) ) {
                alt2=1;
            }
            else if ( (LA2_0==EOF) ) {
                alt2=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 2, 0, input);

                throw nvae;

            }
            switch (alt2) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:76:3: item ENDOFLINE items1
                    {
                    pushFollow(FOLLOW_item_in_items1165);
                    item5=item();

                    state._fsp--;


                    match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_items1167); 

                    pushFollow(FOLLOW_items1_in_items1169);
                    items1();

                    state._fsp--;



                        garments.add(item5);
                      

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:81:3: 
                    {
                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "items1"



    // $ANTLR start "item"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:83:1: item returns [Garment garm] : LEFTCURLY ENDOFLINE type category weight color shade maker preference RIGHTCURLY ;
    public final Garment item() throws RecognitionException {
        Garment garm = null;


        String type6 =null;

        String weight7 =null;

        String maker8 =null;

        String color9 =null;

        String shade10 =null;

        String preference11 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:84:3: ( LEFTCURLY ENDOFLINE type category weight color shade maker preference RIGHTCURLY )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:85:3: LEFTCURLY ENDOFLINE type category weight color shade maker preference RIGHTCURLY
            {
            match(input,LEFTCURLY,FOLLOW_LEFTCURLY_in_item196); 

            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_item198); 

            pushFollow(FOLLOW_type_in_item200);
            type6=type();

            state._fsp--;


            pushFollow(FOLLOW_category_in_item202);
            category();

            state._fsp--;


            pushFollow(FOLLOW_weight_in_item204);
            weight7=weight();

            state._fsp--;


            pushFollow(FOLLOW_color_in_item206);
            color9=color();

            state._fsp--;


            pushFollow(FOLLOW_shade_in_item208);
            shade10=shade();

            state._fsp--;


            pushFollow(FOLLOW_maker_in_item210);
            maker8=maker();

            state._fsp--;


            pushFollow(FOLLOW_preference_in_item212);
            preference11=preference();

            state._fsp--;


            match(input,RIGHTCURLY,FOLLOW_RIGHTCURLY_in_item214); 


                Garment g = new Garment(type6, weight7, maker8, color9, shade10, preference11);
                garm = g;
              

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return garm;
    }
    // $ANTLR end "item"



    // $ANTLR start "type"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:92:1: type returns [String val] : ITEMT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE ;
    public final String type() throws RecognitionException {
        String val = null;


        GrammarBackup3Parser.value_return value12 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:93:3: ( ITEMT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:94:3: ITEMT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE
            {
            match(input,ITEMT,FOLLOW_ITEMT_in_type237); 

            match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_type239); 

            pushFollow(FOLLOW_value_in_type241);
            value12=value();

            state._fsp--;


            match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_type243); 

            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_type245); 


                val = (value12!=null?input.toString(value12.start,value12.stop):null);
              

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return val;
    }
    // $ANTLR end "type"



    // $ANTLR start "category"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:100:1: category returns [String val] : ITEMT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE ;
    public final String category() throws RecognitionException {
        String val = null;


        GrammarBackup3Parser.value_return value13 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:101:3: ( ITEMT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:102:3: ITEMT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE
            {
            match(input,ITEMT,FOLLOW_ITEMT_in_category270); 

            match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_category272); 

            pushFollow(FOLLOW_value_in_category274);
            value13=value();

            state._fsp--;


            match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_category276); 

            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_category278); 


                val = (value13!=null?input.toString(value13.start,value13.stop):null);
              

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return val;
    }
    // $ANTLR end "category"



    // $ANTLR start "weight"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:108:1: weight returns [String val] : WEIGHT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE ;
    public final String weight() throws RecognitionException {
        String val = null;


        GrammarBackup3Parser.value_return value14 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:109:3: ( WEIGHT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:110:3: WEIGHT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE
            {
            match(input,WEIGHT,FOLLOW_WEIGHT_in_weight303); 

            match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_weight305); 

            pushFollow(FOLLOW_value_in_weight307);
            value14=value();

            state._fsp--;


            match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_weight309); 

            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_weight311); 


                val = (value14!=null?input.toString(value14.start,value14.stop):null);
              

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return val;
    }
    // $ANTLR end "weight"



    // $ANTLR start "color"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:116:1: color returns [String val] : ( COLORT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE |);
    public final String color() throws RecognitionException {
        String val = null;


        GrammarBackup3Parser.value_return value15 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:117:3: ( COLORT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE |)
            int alt3=2;
            int LA3_0 = input.LA(1);

            if ( (LA3_0==COLORT) ) {
                alt3=1;
            }
            else if ( (LA3_0==MAKERT||LA3_0==PREFERENCET||LA3_0==RIGHTCURLY||LA3_0==SHADET) ) {
                alt3=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 3, 0, input);

                throw nvae;

            }
            switch (alt3) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:118:3: COLORT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE
                    {
                    match(input,COLORT,FOLLOW_COLORT_in_color336); 

                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_color338); 

                    pushFollow(FOLLOW_value_in_color340);
                    value15=value();

                    state._fsp--;


                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_color342); 

                    match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_color344); 


                        val = (value15!=null?input.toString(value15.start,value15.stop):null);
                      

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:123:3: 
                    {

                        val = "";
                      

                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return val;
    }
    // $ANTLR end "color"



    // $ANTLR start "shade"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:128:1: shade returns [String val] : ( SHADET ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE |);
    public final String shade() throws RecognitionException {
        String val = null;


        GrammarBackup3Parser.value_return value16 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:129:3: ( SHADET ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE |)
            int alt4=2;
            int LA4_0 = input.LA(1);

            if ( (LA4_0==SHADET) ) {
                alt4=1;
            }
            else if ( (LA4_0==MAKERT||LA4_0==PREFERENCET||LA4_0==RIGHTCURLY) ) {
                alt4=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 4, 0, input);

                throw nvae;

            }
            switch (alt4) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:130:3: SHADET ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE
                    {
                    match(input,SHADET,FOLLOW_SHADET_in_shade375); 

                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_shade377); 

                    pushFollow(FOLLOW_value_in_shade379);
                    value16=value();

                    state._fsp--;


                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_shade381); 

                    match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_shade383); 


                        val = (value16!=null?input.toString(value16.start,value16.stop):null);
                      

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:135:3: 
                    {

                        val = "";
                      

                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return val;
    }
    // $ANTLR end "shade"



    // $ANTLR start "maker"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:140:1: maker returns [String val] : ( MAKERT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE |);
    public final String maker() throws RecognitionException {
        String val = null;


        GrammarBackup3Parser.value_return value17 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:141:3: ( MAKERT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE |)
            int alt5=2;
            int LA5_0 = input.LA(1);

            if ( (LA5_0==MAKERT) ) {
                alt5=1;
            }
            else if ( (LA5_0==PREFERENCET||LA5_0==RIGHTCURLY) ) {
                alt5=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 5, 0, input);

                throw nvae;

            }
            switch (alt5) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:142:3: MAKERT ASSIGNMENT_OP value ENDOFSTMT ENDOFLINE
                    {
                    match(input,MAKERT,FOLLOW_MAKERT_in_maker414); 

                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_maker416); 

                    pushFollow(FOLLOW_value_in_maker418);
                    value17=value();

                    state._fsp--;


                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_maker420); 

                    match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_maker422); 


                        val = (value17!=null?input.toString(value17.start,value17.stop):null);
                      

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:147:3: 
                    {

                        val = "";
                      

                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return val;
    }
    // $ANTLR end "maker"



    // $ANTLR start "preference"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:152:1: preference returns [String val] : ( PREFERENCET ASSIGNMENT_OP prefRange ENDOFSTMT ENDOFLINE |);
    public final String preference() throws RecognitionException {
        String val = null;


        GrammarBackup3Parser.prefRange_return prefRange18 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:153:3: ( PREFERENCET ASSIGNMENT_OP prefRange ENDOFSTMT ENDOFLINE |)
            int alt6=2;
            int LA6_0 = input.LA(1);

            if ( (LA6_0==PREFERENCET) ) {
                alt6=1;
            }
            else if ( (LA6_0==RIGHTCURLY) ) {
                alt6=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 6, 0, input);

                throw nvae;

            }
            switch (alt6) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:154:3: PREFERENCET ASSIGNMENT_OP prefRange ENDOFSTMT ENDOFLINE
                    {
                    match(input,PREFERENCET,FOLLOW_PREFERENCET_in_preference453); 

                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_preference455); 

                    pushFollow(FOLLOW_prefRange_in_preference457);
                    prefRange18=prefRange();

                    state._fsp--;


                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_preference459); 

                    match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_preference461); 


                        val = (prefRange18!=null?input.toString(prefRange18.start,prefRange18.stop):null);
                      

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:159:3: 
                    {

                        val = "2";
                      

                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return val;
    }
    // $ANTLR end "preference"



    // $ANTLR start "mainProgram"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:164:1: mainProgram : header mainDecl block createEventCommand runCommand ;
    public final void mainProgram() throws RecognitionException {
        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:165:3: ( header mainDecl block createEventCommand runCommand )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:166:3: header mainDecl block createEventCommand runCommand
            {
            pushFollow(FOLLOW_header_in_mainProgram488);
            header();

            state._fsp--;


            pushFollow(FOLLOW_mainDecl_in_mainProgram490);
            mainDecl();

            state._fsp--;


            pushFollow(FOLLOW_block_in_mainProgram492);
            block();

            state._fsp--;


            pushFollow(FOLLOW_createEventCommand_in_mainProgram494);
            createEventCommand();

            state._fsp--;


            pushFollow(FOLLOW_runCommand_in_mainProgram496);
            runCommand();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "mainProgram"



    // $ANTLR start "header"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:169:1: header : ( USET WARDROBET wardrobeNames ENDOFSTMT ENDOFLINE |);
    public final void header() throws RecognitionException {
        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:170:3: ( USET WARDROBET wardrobeNames ENDOFSTMT ENDOFLINE |)
            int alt7=2;
            int LA7_0 = input.LA(1);

            if ( (LA7_0==USET) ) {
                alt7=1;
            }
            else if ( (LA7_0==VOID) ) {
                alt7=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 7, 0, input);

                throw nvae;

            }
            switch (alt7) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:171:3: USET WARDROBET wardrobeNames ENDOFSTMT ENDOFLINE
                    {
                    match(input,USET,FOLLOW_USET_in_header511); 

                    match(input,WARDROBET,FOLLOW_WARDROBET_in_header513); 

                    pushFollow(FOLLOW_wardrobeNames_in_header515);
                    wardrobeNames();

                    state._fsp--;


                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_header517); 

                    match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_header519); 

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:173:3: 
                    {
                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "header"



    // $ANTLR start "wardrobeNames"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:175:1: wardrobeNames returns [String value] : wardrobeName wardrobeNames1 ;
    public final String wardrobeNames() throws RecognitionException {
        String value = null;


        GrammarBackup3Parser.wardrobeName_return wardrobeName19 =null;

        String wardrobeNames120 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:176:3: ( wardrobeName wardrobeNames1 )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:177:3: wardrobeName wardrobeNames1
            {
            pushFollow(FOLLOW_wardrobeName_in_wardrobeNames542);
            wardrobeName19=wardrobeName();

            state._fsp--;


            pushFollow(FOLLOW_wardrobeNames1_in_wardrobeNames544);
            wardrobeNames120=wardrobeNames1();

            state._fsp--;



            //       System.out.println("text2: "+(wardrobeName19!=null?input.toString(wardrobeName19.start,wardrobeName19.stop):null));
                   value = (wardrobeName19!=null?input.toString(wardrobeName19.start,wardrobeName19.stop):null) + ", " + wardrobeNames120 ;
                   value = value.substring(0, value.length()-2);
                

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return value;
    }
    // $ANTLR end "wardrobeNames"



    // $ANTLR start "wardrobeNames1"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:185:1: wardrobeNames1 returns [String value] : ( '+' wardrobeName w1= wardrobeNames1 |);
    public final String wardrobeNames1() throws RecognitionException {
        String value = null;


        String w1 =null;

        GrammarBackup3Parser.wardrobeName_return wardrobeName21 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:186:3: ( '+' wardrobeName w1= wardrobeNames1 |)
            int alt8=2;
            int LA8_0 = input.LA(1);

            if ( (LA8_0==56) ) {
                alt8=1;
            }
            else if ( (LA8_0==ENDOFSTMT) ) {
                alt8=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 8, 0, input);

                throw nvae;

            }
            switch (alt8) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:187:3: '+' wardrobeName w1= wardrobeNames1
                    {
                    match(input,56,FOLLOW_56_in_wardrobeNames1569); 

                    pushFollow(FOLLOW_wardrobeName_in_wardrobeNames1571);
                    wardrobeName21=wardrobeName();

                    state._fsp--;


                    pushFollow(FOLLOW_wardrobeNames1_in_wardrobeNames1575);
                    w1=wardrobeNames1();

                    state._fsp--;



                    //      System.out.println("text: "+(wardrobeName21!=null?input.toString(wardrobeName21.start,wardrobeName21.stop):null));
                           value = (wardrobeName21!=null?input.toString(wardrobeName21.start,wardrobeName21.stop):null) + ", " + w1;
                       

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:193:3: 
                    {
                     value = "";

                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return value;
    }
    // $ANTLR end "wardrobeNames1"



    // $ANTLR start "mainDecl"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:196:1: mainDecl : VOID MAIN LEFTPARAN RIGHTPARAN ENDOFLINE ;
    public final void mainDecl() throws RecognitionException {
        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:197:3: ( VOID MAIN LEFTPARAN RIGHTPARAN ENDOFLINE )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:198:3: VOID MAIN LEFTPARAN RIGHTPARAN ENDOFLINE
            {
            match(input,VOID,FOLLOW_VOID_in_mainDecl603); 

            match(input,MAIN,FOLLOW_MAIN_in_mainDecl605); 

            match(input,LEFTPARAN,FOLLOW_LEFTPARAN_in_mainDecl607); 

            match(input,RIGHTPARAN,FOLLOW_RIGHTPARAN_in_mainDecl609); 

            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_mainDecl611); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "mainDecl"



    // $ANTLR start "block"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:201:1: block : LEFTCURLY ENDOFLINE lines RIGHTCURLY ENDOFLINE ;
    public final void block() throws RecognitionException {
        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:202:3: ( LEFTCURLY ENDOFLINE lines RIGHTCURLY ENDOFLINE )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:203:3: LEFTCURLY ENDOFLINE lines RIGHTCURLY ENDOFLINE
            {
            match(input,LEFTCURLY,FOLLOW_LEFTCURLY_in_block626); 

            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_block628); 

            pushFollow(FOLLOW_lines_in_block630);
            lines();

            state._fsp--;


            match(input,RIGHTCURLY,FOLLOW_RIGHTCURLY_in_block632); 

            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_block634); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "block"



    // $ANTLR start "lines"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:206:1: lines : line ENDOFLINE lines1 ;
    public final void lines() throws RecognitionException {
        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:207:3: ( line ENDOFLINE lines1 )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:208:3: line ENDOFLINE lines1
            {
            pushFollow(FOLLOW_line_in_lines649);
            line();

            state._fsp--;


            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_lines651); 

            pushFollow(FOLLOW_lines1_in_lines653);
            lines1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "lines"



    // $ANTLR start "lines1"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:211:1: lines1 : ( line ENDOFLINE lines1 |);
    public final void lines1() throws RecognitionException {
        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:212:3: ( line ENDOFLINE lines1 |)
            int alt9=2;
            int LA9_0 = input.LA(1);

            if ( (LA9_0==DATET||(LA9_0 >= ENDDATE && LA9_0 <= ENDOFLINE)||LA9_0==ENDTIME||(LA9_0 >= INCLUDE && LA9_0 <= INT)||LA9_0==LEFTCURLY||(LA9_0 >= REJTOK && LA9_0 <= RETTOK)||(LA9_0 >= STARTDATE && LA9_0 <= STRING)||LA9_0==TIMET) ) {
                alt9=1;
            }
            else if ( (LA9_0==RIGHTCURLY) ) {
                alt9=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 9, 0, input);

                throw nvae;

            }
            switch (alt9) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:213:3: line ENDOFLINE lines1
                    {
                    pushFollow(FOLLOW_line_in_lines1668);
                    line();

                    state._fsp--;


                    match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_lines1670); 

                    pushFollow(FOLLOW_lines1_in_lines1672);
                    lines1();

                    state._fsp--;


                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:215:3: 
                    {
                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "lines1"



    // $ANTLR start "line"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:217:1: line : ( block | assignmentStatement | INCLUDE variableName ENDOFSTMT | REJTOK variableName ENDOFSTMT | RETTOK IDENTIFIER |);
    public final void line() throws RecognitionException {
        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:218:3: ( block | assignmentStatement | INCLUDE variableName ENDOFSTMT | REJTOK variableName ENDOFSTMT | RETTOK IDENTIFIER |)
            int alt10=6;
            switch ( input.LA(1) ) {
            case LEFTCURLY:
                {
                alt10=1;
                }
                break;
            case DATET:
            case ENDDATE:
            case ENDTIME:
            case INT:
            case STARTDATE:
            case STARTTIME:
            case STRING:
            case TIMET:
                {
                alt10=2;
                }
                break;
            case INCLUDE:
                {
                alt10=3;
                }
                break;
            case REJTOK:
                {
                alt10=4;
                }
                break;
            case RETTOK:
                {
                alt10=5;
                }
                break;
            case ENDOFLINE:
                {
                alt10=6;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 10, 0, input);

                throw nvae;

            }

            switch (alt10) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:219:3: block
                    {
                    pushFollow(FOLLOW_block_in_line691);
                    block();

                    state._fsp--;


                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:220:5: assignmentStatement
                    {
                    pushFollow(FOLLOW_assignmentStatement_in_line697);
                    assignmentStatement();

                    state._fsp--;


                    }
                    break;
                case 3 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:222:5: INCLUDE variableName ENDOFSTMT
                    {
                    match(input,INCLUDE,FOLLOW_INCLUDE_in_line706); 

                    pushFollow(FOLLOW_variableName_in_line708);
                    variableName();

                    state._fsp--;


                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_line710); 

                    }
                    break;
                case 4 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:223:5: REJTOK variableName ENDOFSTMT
                    {
                    match(input,REJTOK,FOLLOW_REJTOK_in_line716); 

                    pushFollow(FOLLOW_variableName_in_line718);
                    variableName();

                    state._fsp--;


                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_line720); 

                    }
                    break;
                case 5 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:224:5: RETTOK IDENTIFIER
                    {
                    match(input,RETTOK,FOLLOW_RETTOK_in_line726); 

                    match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_line728); 

                    }
                    break;
                case 6 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:226:3: 
                    {
                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "line"



    // $ANTLR start "assignmentStatement"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:228:1: assignmentStatement : ( DATET variableName ASSIGNMENT_OP DATE ENDOFSTMT | ENDDATE variableName ASSIGNMENT_OP DATE ENDOFSTMT | ENDTIME variableName ASSIGNMENT_OP TIME ENDOFSTMT | INT variableName ASSIGNMENT_OP NUMBER ENDOFSTMT | STARTDATE variableName ASSIGNMENT_OP DATE ENDOFSTMT | STARTTIME variableName ASSIGNMENT_OP TIME ENDOFSTMT | STRING variableName ASSIGNMENT_OP IDENTIFIER ENDOFSTMT | TIMET variableName ASSIGNMENT_OP TIME ENDOFSTMT );
    public final void assignmentStatement() throws RecognitionException {
        Token DATE23=null;
        Token DATE25=null;
        Token TIME27=null;
        Token NUMBER29=null;
        Token DATE31=null;
        Token TIME33=null;
        Token IDENTIFIER35=null;
        Token TIME37=null;
        GrammarBackup3Parser.variableName_return variableName22 =null;

        GrammarBackup3Parser.variableName_return variableName24 =null;

        GrammarBackup3Parser.variableName_return variableName26 =null;

        GrammarBackup3Parser.variableName_return variableName28 =null;

        GrammarBackup3Parser.variableName_return variableName30 =null;

        GrammarBackup3Parser.variableName_return variableName32 =null;

        GrammarBackup3Parser.variableName_return variableName34 =null;

        GrammarBackup3Parser.variableName_return variableName36 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:229:3: ( DATET variableName ASSIGNMENT_OP DATE ENDOFSTMT | ENDDATE variableName ASSIGNMENT_OP DATE ENDOFSTMT | ENDTIME variableName ASSIGNMENT_OP TIME ENDOFSTMT | INT variableName ASSIGNMENT_OP NUMBER ENDOFSTMT | STARTDATE variableName ASSIGNMENT_OP DATE ENDOFSTMT | STARTTIME variableName ASSIGNMENT_OP TIME ENDOFSTMT | STRING variableName ASSIGNMENT_OP IDENTIFIER ENDOFSTMT | TIMET variableName ASSIGNMENT_OP TIME ENDOFSTMT )
            int alt11=8;
            switch ( input.LA(1) ) {
            case DATET:
                {
                alt11=1;
                }
                break;
            case ENDDATE:
                {
                alt11=2;
                }
                break;
            case ENDTIME:
                {
                alt11=3;
                }
                break;
            case INT:
                {
                alt11=4;
                }
                break;
            case STARTDATE:
                {
                alt11=5;
                }
                break;
            case STARTTIME:
                {
                alt11=6;
                }
                break;
            case STRING:
                {
                alt11=7;
                }
                break;
            case TIMET:
                {
                alt11=8;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 11, 0, input);

                throw nvae;

            }

            switch (alt11) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:230:3: DATET variableName ASSIGNMENT_OP DATE ENDOFSTMT
                    {
                    match(input,DATET,FOLLOW_DATET_in_assignmentStatement747); 

                    pushFollow(FOLLOW_variableName_in_assignmentStatement749);
                    variableName22=variableName();

                    state._fsp--;


                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_assignmentStatement751); 

                    DATE23=(Token)match(input,DATE,FOLLOW_DATE_in_assignmentStatement753); 

                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_assignmentStatement755); 


                        if(!symbolTable.containsKey((variableName22!=null?input.toString(variableName22.start,variableName22.stop):null))){
                        String[] s = new String[2];
                        s[0] = "date";
                        s[1] = (DATE23!=null?DATE23.getText():null);
                        symbolTable.put((variableName22!=null?input.toString(variableName22.start,variableName22.stop):null), s);}
                        else
                          System.out.println("Error! You are trying to redifine a previously defined variable " + (variableName22!=null?input.toString(variableName22.start,variableName22.stop):null));
                      

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:240:5: ENDDATE variableName ASSIGNMENT_OP DATE ENDOFSTMT
                    {
                    match(input,ENDDATE,FOLLOW_ENDDATE_in_assignmentStatement765); 

                    pushFollow(FOLLOW_variableName_in_assignmentStatement767);
                    variableName24=variableName();

                    state._fsp--;


                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_assignmentStatement769); 

                    DATE25=(Token)match(input,DATE,FOLLOW_DATE_in_assignmentStatement771); 

                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_assignmentStatement773); 


                        if(!symbolTable.containsKey((variableName24!=null?input.toString(variableName24.start,variableName24.stop):null))){
                        String[] s = new String[2];
                        s[0] = "enddate";
                        s[1] = (DATE25!=null?DATE25.getText():null);
                        symbolTable.put((variableName24!=null?input.toString(variableName24.start,variableName24.stop):null), s);
                        }
                        else
                          System.out.println("Error! You are trying to redifine a previously defined variable " + (variableName24!=null?input.toString(variableName24.start,variableName24.stop):null));
                      

                    }
                    break;
                case 3 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:251:5: ENDTIME variableName ASSIGNMENT_OP TIME ENDOFSTMT
                    {
                    match(input,ENDTIME,FOLLOW_ENDTIME_in_assignmentStatement783); 

                    pushFollow(FOLLOW_variableName_in_assignmentStatement785);
                    variableName26=variableName();

                    state._fsp--;


                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_assignmentStatement787); 

                    TIME27=(Token)match(input,TIME,FOLLOW_TIME_in_assignmentStatement789); 

                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_assignmentStatement791); 


                        if(!symbolTable.containsKey((variableName26!=null?input.toString(variableName26.start,variableName26.stop):null))){
                        String[] s = new String[2];
                        s[0] = "endtime";
                        s[1] = (TIME27!=null?TIME27.getText():null);
                        symbolTable.put((variableName26!=null?input.toString(variableName26.start,variableName26.stop):null), s);}
                        else
                          System.out.println("Error! You are trying to redifine a previously defined variable " + (variableName26!=null?input.toString(variableName26.start,variableName26.stop):null));
                      

                    }
                    break;
                case 4 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:261:5: INT variableName ASSIGNMENT_OP NUMBER ENDOFSTMT
                    {
                    match(input,INT,FOLLOW_INT_in_assignmentStatement801); 

                    pushFollow(FOLLOW_variableName_in_assignmentStatement803);
                    variableName28=variableName();

                    state._fsp--;


                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_assignmentStatement805); 

                    NUMBER29=(Token)match(input,NUMBER,FOLLOW_NUMBER_in_assignmentStatement807); 

                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_assignmentStatement809); 


                        if(!symbolTable.containsKey((variableName28!=null?input.toString(variableName28.start,variableName28.stop):null))){
                        String[] s = new String[2];
                        s[0] = "int";
                        s[1] = (NUMBER29!=null?NUMBER29.getText():null);
                        symbolTable.put((variableName28!=null?input.toString(variableName28.start,variableName28.stop):null), s);}
                        else
                          System.out.println("Error! You are trying to redifine a previously defined variable " + (variableName28!=null?input.toString(variableName28.start,variableName28.stop):null));
                      

                    }
                    break;
                case 5 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:271:5: STARTDATE variableName ASSIGNMENT_OP DATE ENDOFSTMT
                    {
                    match(input,STARTDATE,FOLLOW_STARTDATE_in_assignmentStatement819); 

                    pushFollow(FOLLOW_variableName_in_assignmentStatement821);
                    variableName30=variableName();

                    state._fsp--;


                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_assignmentStatement823); 

                    DATE31=(Token)match(input,DATE,FOLLOW_DATE_in_assignmentStatement825); 

                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_assignmentStatement827); 


                        if(!symbolTable.containsKey((variableName30!=null?input.toString(variableName30.start,variableName30.stop):null))){
                        String[] s = new String[2];
                        s[0] = "startdate";
                        s[1] = (DATE31!=null?DATE31.getText():null);
                        symbolTable.put((variableName30!=null?input.toString(variableName30.start,variableName30.stop):null), s);}
                        else
                          System.out.println("Error! You are trying to redifine a previously defined variable " + (variableName30!=null?input.toString(variableName30.start,variableName30.stop):null));
                      

                    }
                    break;
                case 6 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:281:5: STARTTIME variableName ASSIGNMENT_OP TIME ENDOFSTMT
                    {
                    match(input,STARTTIME,FOLLOW_STARTTIME_in_assignmentStatement837); 

                    pushFollow(FOLLOW_variableName_in_assignmentStatement839);
                    variableName32=variableName();

                    state._fsp--;


                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_assignmentStatement841); 

                    TIME33=(Token)match(input,TIME,FOLLOW_TIME_in_assignmentStatement843); 

                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_assignmentStatement845); 


                        if(!symbolTable.containsKey((variableName32!=null?input.toString(variableName32.start,variableName32.stop):null))){
                        String[] s = new String[2];
                        s[0] = "starttime";
                        s[1] = (TIME33!=null?TIME33.getText():null);
                        symbolTable.put((variableName32!=null?input.toString(variableName32.start,variableName32.stop):null), s);}
                        else
                          System.out.println("Error! You are trying to redifine a previously defined variable " + (variableName32!=null?input.toString(variableName32.start,variableName32.stop):null));
                      

                    }
                    break;
                case 7 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:291:5: STRING variableName ASSIGNMENT_OP IDENTIFIER ENDOFSTMT
                    {
                    match(input,STRING,FOLLOW_STRING_in_assignmentStatement855); 

                    pushFollow(FOLLOW_variableName_in_assignmentStatement857);
                    variableName34=variableName();

                    state._fsp--;


                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_assignmentStatement859); 

                    IDENTIFIER35=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_assignmentStatement861); 

                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_assignmentStatement863); 


                        if(!symbolTable.containsKey((variableName34!=null?input.toString(variableName34.start,variableName34.stop):null))){
                        String[] s = new String[2];
                        s[0] = "string";
                        s[1] = (IDENTIFIER35!=null?IDENTIFIER35.getText():null);
                        symbolTable.put((variableName34!=null?input.toString(variableName34.start,variableName34.stop):null), s);}
                        else
                          System.out.println("Error! You are trying to redifine a previously defined variable " + (variableName34!=null?input.toString(variableName34.start,variableName34.stop):null));
                      

                    }
                    break;
                case 8 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:301:5: TIMET variableName ASSIGNMENT_OP TIME ENDOFSTMT
                    {
                    match(input,TIMET,FOLLOW_TIMET_in_assignmentStatement873); 

                    pushFollow(FOLLOW_variableName_in_assignmentStatement875);
                    variableName36=variableName();

                    state._fsp--;


                    match(input,ASSIGNMENT_OP,FOLLOW_ASSIGNMENT_OP_in_assignmentStatement877); 

                    TIME37=(Token)match(input,TIME,FOLLOW_TIME_in_assignmentStatement879); 

                    match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_assignmentStatement881); 


                        if(!symbolTable.containsKey((variableName36!=null?input.toString(variableName36.start,variableName36.stop):null))){
                        String[] s = new String[2];
                        s[0] = "time";
                        s[1] = (TIME37!=null?TIME37.getText():null);
                        symbolTable.put((variableName36!=null?input.toString(variableName36.start,variableName36.stop):null), s);}
                        else
                          System.out.println("Error! You are trying to redifine a previously defined variable " + (variableName36!=null?input.toString(variableName36.start,variableName36.stop):null));
                      

                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "assignmentStatement"



    // $ANTLR start "createEventCommand"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:313:1: createEventCommand : CREATEEVENT LEFTPARAN parameters RIGHTPARAN ENDOFSTMT ENDOFLINE ;
    public final void createEventCommand() throws RecognitionException {
        String parameters38 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:314:3: ( CREATEEVENT LEFTPARAN parameters RIGHTPARAN ENDOFSTMT ENDOFLINE )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:315:3: CREATEEVENT LEFTPARAN parameters RIGHTPARAN ENDOFSTMT ENDOFLINE
            {
            match(input,CREATEEVENT,FOLLOW_CREATEEVENT_in_createEventCommand900); 

            match(input,LEFTPARAN,FOLLOW_LEFTPARAN_in_createEventCommand902); 

            pushFollow(FOLLOW_parameters_in_createEventCommand904);
            parameters38=parameters();

            state._fsp--;


            match(input,RIGHTPARAN,FOLLOW_RIGHTPARAN_in_createEventCommand906); 

            match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_createEventCommand908); 

            match(input,ENDOFLINE,FOLLOW_ENDOFLINE_in_createEventCommand910); 


                String s = new String("createEvent(" + parameters38 + ")");
                mainFuncString.add(s);
                
              

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "createEventCommand"



    // $ANTLR start "runCommand"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:323:1: runCommand : GENERATEOUTFIT LEFTPARAN parameters RIGHTPARAN ENDOFSTMT ;
    public final void runCommand() throws RecognitionException {
        String parameters39 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:324:3: ( GENERATEOUTFIT LEFTPARAN parameters RIGHTPARAN ENDOFSTMT )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:325:3: GENERATEOUTFIT LEFTPARAN parameters RIGHTPARAN ENDOFSTMT
            {
            match(input,GENERATEOUTFIT,FOLLOW_GENERATEOUTFIT_in_runCommand929); 

            match(input,LEFTPARAN,FOLLOW_LEFTPARAN_in_runCommand931); 

            pushFollow(FOLLOW_parameters_in_runCommand933);
            parameters39=parameters();

            state._fsp--;


            match(input,RIGHTPARAN,FOLLOW_RIGHTPARAN_in_runCommand935); 

            match(input,ENDOFSTMT,FOLLOW_ENDOFSTMT_in_runCommand937); 


                String s = new String("generateOutfit(" + parameters39 + ")");
                mainFuncString.add(s);
              

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return ;
    }
    // $ANTLR end "runCommand"



    // $ANTLR start "parameters"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:332:1: parameters returns [String value] : IDENTIFIER parameters1 ;
    public final String parameters() throws RecognitionException {
        String value = null;


        Token IDENTIFIER40=null;
        String parameters141 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:333:3: ( IDENTIFIER parameters1 )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:334:3: IDENTIFIER parameters1
            {
            IDENTIFIER40=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_parameters961); 

            pushFollow(FOLLOW_parameters1_in_parameters963);
            parameters141=parameters1();

            state._fsp--;



            //       System.out.println("text2: "+(IDENTIFIER40!=null?IDENTIFIER40.getText():null));
                   value = (IDENTIFIER40!=null?IDENTIFIER40.getText():null) + ", " + parameters141 ;
                   value = value.substring(0, value.length()-2);
                

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return value;
    }
    // $ANTLR end "parameters"



    // $ANTLR start "parameters1"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:342:1: parameters1 returns [String param] : ( ',' IDENTIFIER p1= parameters1 |);
    public final String parameters1() throws RecognitionException {
        String param = null;


        Token IDENTIFIER42=null;
        String p1 =null;


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:343:3: ( ',' IDENTIFIER p1= parameters1 |)
            int alt12=2;
            int LA12_0 = input.LA(1);

            if ( (LA12_0==57) ) {
                alt12=1;
            }
            else if ( (LA12_0==RIGHTPARAN) ) {
                alt12=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 12, 0, input);

                throw nvae;

            }
            switch (alt12) {
                case 1 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:344:3: ',' IDENTIFIER p1= parameters1
                    {
                    match(input,57,FOLLOW_57_in_parameters1988); 

                    IDENTIFIER42=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_parameters1990); 

                    pushFollow(FOLLOW_parameters1_in_parameters1994);
                    p1=parameters1();

                    state._fsp--;



                    //      System.out.println("text: "+(IDENTIFIER42!=null?IDENTIFIER42.getText():null));
                            param = (IDENTIFIER42!=null?IDENTIFIER42.getText():null) + ", " + p1;
                        

                    }
                    break;
                case 2 :
                    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:350:3: 
                    {
                     
                        param = "";
                    //    System.out.println ("i did come here"); 
                      

                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return param;
    }
    // $ANTLR end "parameters1"


    public static class wardrobeName_return extends ParserRuleReturnScope {
    };


    // $ANTLR start "wardrobeName"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:356:1: wardrobeName : IDENTIFIER ;
    public final GrammarBackup3Parser.wardrobeName_return wardrobeName() throws RecognitionException {
        GrammarBackup3Parser.wardrobeName_return retval = new GrammarBackup3Parser.wardrobeName_return();
        retval.start = input.LT(1);


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:357:3: ( IDENTIFIER )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:358:3: IDENTIFIER
            {
            match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_wardrobeName1023); 

            }

            retval.stop = input.LT(-1);


        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return retval;
    }
    // $ANTLR end "wardrobeName"


    public static class prefRange_return extends ParserRuleReturnScope {
    };


    // $ANTLR start "prefRange"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:361:1: prefRange : ( '1' | '2' | '3' );
    public final GrammarBackup3Parser.prefRange_return prefRange() throws RecognitionException {
        GrammarBackup3Parser.prefRange_return retval = new GrammarBackup3Parser.prefRange_return();
        retval.start = input.LT(1);


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:362:3: ( '1' | '2' | '3' )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:
            {
            if ( (input.LA(1) >= 58 && input.LA(1) <= 60) ) {
                input.consume();
                state.errorRecovery=false;
            }
            else {
                MismatchedSetException mse = new MismatchedSetException(null,input);
                throw mse;
            }


            }

            retval.stop = input.LT(-1);


        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return retval;
    }
    // $ANTLR end "prefRange"


    public static class value_return extends ParserRuleReturnScope {
    };


    // $ANTLR start "value"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:366:1: value : IDENTIFIER ;
    public final GrammarBackup3Parser.value_return value() throws RecognitionException {
        GrammarBackup3Parser.value_return retval = new GrammarBackup3Parser.value_return();
        retval.start = input.LT(1);


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:367:3: ( IDENTIFIER )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:368:3: IDENTIFIER
            {
            match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_value1061); 

            }

            retval.stop = input.LT(-1);


        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return retval;
    }
    // $ANTLR end "value"


    public static class variableName_return extends ParserRuleReturnScope {
    };


    // $ANTLR start "variableName"
    // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:371:1: variableName : IDENTIFIER ;
    public final GrammarBackup3Parser.variableName_return variableName() throws RecognitionException {
        GrammarBackup3Parser.variableName_return retval = new GrammarBackup3Parser.variableName_return();
        retval.start = input.LT(1);


        try {
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:372:3: ( IDENTIFIER )
            // C:\\Users\\Kunal\\PLT\\PLT-W2W\\src\\com\\plt\\w2w\\GrammarBackup3.g:373:3: IDENTIFIER
            {
            match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_variableName1076); 

            }

            retval.stop = input.LT(-1);


        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }

        finally {
        	// do for sure before leaving
        }
        return retval;
    }
    // $ANTLR end "variableName"

    // Delegated rules


 

    public static final BitSet FOLLOW_wardrobeCreation_in_start49 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_mainProgram_in_start61 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_createStatement_in_wardrobeCreation87 = new BitSet(new long[]{0x0000000040000000L});
    public static final BitSet FOLLOW_items_in_wardrobeCreation89 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_CREATET_in_createStatement114 = new BitSet(new long[]{0x0010000000000000L});
    public static final BitSet FOLLOW_WARDROBET_in_createStatement116 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_wardrobeName_in_createStatement118 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_createStatement120 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_createStatement122 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_item_in_items142 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_items144 = new BitSet(new long[]{0x0000000040000000L});
    public static final BitSet FOLLOW_items1_in_items146 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_item_in_items1165 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_items1167 = new BitSet(new long[]{0x0000000040000000L});
    public static final BitSet FOLLOW_items1_in_items1169 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_LEFTCURLY_in_item196 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_item198 = new BitSet(new long[]{0x0000000020000000L});
    public static final BitSet FOLLOW_type_in_item200 = new BitSet(new long[]{0x0000000020000000L});
    public static final BitSet FOLLOW_category_in_item202 = new BitSet(new long[]{0x0040000000000000L});
    public static final BitSet FOLLOW_weight_in_item204 = new BitSet(new long[]{0x0000052200000100L});
    public static final BitSet FOLLOW_color_in_item206 = new BitSet(new long[]{0x0000052200000000L});
    public static final BitSet FOLLOW_shade_in_item208 = new BitSet(new long[]{0x0000012200000000L});
    public static final BitSet FOLLOW_maker_in_item210 = new BitSet(new long[]{0x0000012000000000L});
    public static final BitSet FOLLOW_preference_in_item212 = new BitSet(new long[]{0x0000010000000000L});
    public static final BitSet FOLLOW_RIGHTCURLY_in_item214 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ITEMT_in_type237 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_type239 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_value_in_type241 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_type243 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_type245 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ITEMT_in_category270 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_category272 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_value_in_category274 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_category276 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_category278 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_WEIGHT_in_weight303 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_weight305 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_value_in_weight307 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_weight309 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_weight311 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_COLORT_in_color336 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_color338 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_value_in_color340 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_color342 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_color344 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_SHADET_in_shade375 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_shade377 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_value_in_shade379 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_shade381 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_shade383 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_MAKERT_in_maker414 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_maker416 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_value_in_maker418 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_maker420 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_maker422 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_PREFERENCET_in_preference453 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_preference455 = new BitSet(new long[]{0x1C00000000000000L});
    public static final BitSet FOLLOW_prefRange_in_preference457 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_preference459 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_preference461 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_header_in_mainProgram488 = new BitSet(new long[]{0x0008000000000000L});
    public static final BitSet FOLLOW_mainDecl_in_mainProgram490 = new BitSet(new long[]{0x0000000040000000L});
    public static final BitSet FOLLOW_block_in_mainProgram492 = new BitSet(new long[]{0x0000000000000400L});
    public static final BitSet FOLLOW_createEventCommand_in_mainProgram494 = new BitSet(new long[]{0x0000000000800000L});
    public static final BitSet FOLLOW_runCommand_in_mainProgram496 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_USET_in_header511 = new BitSet(new long[]{0x0010000000000000L});
    public static final BitSet FOLLOW_WARDROBET_in_header513 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_wardrobeNames_in_header515 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_header517 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_header519 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_wardrobeName_in_wardrobeNames542 = new BitSet(new long[]{0x0100000000000000L});
    public static final BitSet FOLLOW_wardrobeNames1_in_wardrobeNames544 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_56_in_wardrobeNames1569 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_wardrobeName_in_wardrobeNames1571 = new BitSet(new long[]{0x0100000000000000L});
    public static final BitSet FOLLOW_wardrobeNames1_in_wardrobeNames1575 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_VOID_in_mainDecl603 = new BitSet(new long[]{0x0000000100000000L});
    public static final BitSet FOLLOW_MAIN_in_mainDecl605 = new BitSet(new long[]{0x0000000080000000L});
    public static final BitSet FOLLOW_LEFTPARAN_in_mainDecl607 = new BitSet(new long[]{0x0000020000000000L});
    public static final BitSet FOLLOW_RIGHTPARAN_in_mainDecl609 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_mainDecl611 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_LEFTCURLY_in_block626 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_block628 = new BitSet(new long[]{0x000138C0580B2000L});
    public static final BitSet FOLLOW_lines_in_block630 = new BitSet(new long[]{0x0000010000000000L});
    public static final BitSet FOLLOW_RIGHTCURLY_in_block632 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_block634 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_line_in_lines649 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_lines651 = new BitSet(new long[]{0x000138C0580B2000L});
    public static final BitSet FOLLOW_lines1_in_lines653 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_line_in_lines1668 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_lines1670 = new BitSet(new long[]{0x000138C0580B2000L});
    public static final BitSet FOLLOW_lines1_in_lines1672 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_block_in_line691 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_assignmentStatement_in_line697 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_INCLUDE_in_line706 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_line708 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_line710 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_REJTOK_in_line716 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_line718 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_line720 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RETTOK_in_line726 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_IDENTIFIER_in_line728 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_DATET_in_assignmentStatement747 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_assignmentStatement749 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_assignmentStatement751 = new BitSet(new long[]{0x0000000000001000L});
    public static final BitSet FOLLOW_DATE_in_assignmentStatement753 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_assignmentStatement755 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ENDDATE_in_assignmentStatement765 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_assignmentStatement767 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_assignmentStatement769 = new BitSet(new long[]{0x0000000000001000L});
    public static final BitSet FOLLOW_DATE_in_assignmentStatement771 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_assignmentStatement773 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ENDTIME_in_assignmentStatement783 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_assignmentStatement785 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_assignmentStatement787 = new BitSet(new long[]{0x0000800000000000L});
    public static final BitSet FOLLOW_TIME_in_assignmentStatement789 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_assignmentStatement791 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_INT_in_assignmentStatement801 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_assignmentStatement803 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_assignmentStatement805 = new BitSet(new long[]{0x0000000400000000L});
    public static final BitSet FOLLOW_NUMBER_in_assignmentStatement807 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_assignmentStatement809 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_STARTDATE_in_assignmentStatement819 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_assignmentStatement821 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_assignmentStatement823 = new BitSet(new long[]{0x0000000000001000L});
    public static final BitSet FOLLOW_DATE_in_assignmentStatement825 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_assignmentStatement827 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_STARTTIME_in_assignmentStatement837 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_assignmentStatement839 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_assignmentStatement841 = new BitSet(new long[]{0x0000800000000000L});
    public static final BitSet FOLLOW_TIME_in_assignmentStatement843 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_assignmentStatement845 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_STRING_in_assignmentStatement855 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_assignmentStatement857 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_assignmentStatement859 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_IDENTIFIER_in_assignmentStatement861 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_assignmentStatement863 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_TIMET_in_assignmentStatement873 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_variableName_in_assignmentStatement875 = new BitSet(new long[]{0x0000000000000040L});
    public static final BitSet FOLLOW_ASSIGNMENT_OP_in_assignmentStatement877 = new BitSet(new long[]{0x0000800000000000L});
    public static final BitSet FOLLOW_TIME_in_assignmentStatement879 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_assignmentStatement881 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_CREATEEVENT_in_createEventCommand900 = new BitSet(new long[]{0x0000000080000000L});
    public static final BitSet FOLLOW_LEFTPARAN_in_createEventCommand902 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_parameters_in_createEventCommand904 = new BitSet(new long[]{0x0000020000000000L});
    public static final BitSet FOLLOW_RIGHTPARAN_in_createEventCommand906 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_createEventCommand908 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_ENDOFLINE_in_createEventCommand910 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_GENERATEOUTFIT_in_runCommand929 = new BitSet(new long[]{0x0000000080000000L});
    public static final BitSet FOLLOW_LEFTPARAN_in_runCommand931 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_parameters_in_runCommand933 = new BitSet(new long[]{0x0000020000000000L});
    public static final BitSet FOLLOW_RIGHTPARAN_in_runCommand935 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_ENDOFSTMT_in_runCommand937 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_IDENTIFIER_in_parameters961 = new BitSet(new long[]{0x0200000000000000L});
    public static final BitSet FOLLOW_parameters1_in_parameters963 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_57_in_parameters1988 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_IDENTIFIER_in_parameters1990 = new BitSet(new long[]{0x0200000000000000L});
    public static final BitSet FOLLOW_parameters1_in_parameters1994 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_IDENTIFIER_in_wardrobeName1023 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_IDENTIFIER_in_value1061 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_IDENTIFIER_in_variableName1076 = new BitSet(new long[]{0x0000000000000002L});

}